package com.xxx.server.controller;


import com.xxx.server.pojo.Joblevel;
import com.xxx.server.pojo.response.RespBean;
import com.xxx.server.service.IJoblevelService;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List;

/**
 * <p>
 *  职称管理
 * </p>
 *
 * @author cd
 * @since 2023-12-22
 */

@RestController
@RequestMapping("/system/basic/")
public class JobLevelController {
    @Autowired
    private IJoblevelService jobLevelService;


    @GetMapping("joblevel/")
    public List<Joblevel> getJobLevels(){
        List<Joblevel> list = jobLevelService.getJobLevels();
        return list;

    }
    @ApiOperation(value = "增加职称信息")
    @PostMapping("joblevel")
    public RespBean addJobLevel(@RequestBody Joblevel joblevel){
        joblevel.setCreateDate(LocalDateTime.now());
        if(jobLevelService.save(joblevel)){
            return RespBean.success("添加成功");
        }
        return RespBean.error("添加失败");
    }

    @ApiOperation(value = "更改职称信息")
    @PutMapping("joblevel/")
    public RespBean updateJobLevel(@RequestBody Joblevel joblevel){
        if (jobLevelService.updateById(joblevel)){
            return RespBean.success("更新成功");
        }
        return RespBean.error("更新失败");
    }

    @ApiOperation(value="删除职称")
    @DeleteMapping("joblevel/{id}")
    public RespBean deleteJobLevel(@PathVariable Integer id){
        if (jobLevelService.removeById(id)){
            return RespBean.success("删除成功");
        }
        return RespBean.error("删除失败");
    }

    @ApiOperation(value ="批量删除职称")
    @DeleteMapping("joblevel/")
    public RespBean deleteJobLevelByIds(@RequestBody Integer[] ids){
        if (jobLevelService.removeByIds(Arrays.asList(ids))){
            return RespBean.success("批量删除成功");
        }
        return RespBean.error("批量删除失败");
    }


}
